<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.14"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>PxImmediateMode.h File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
  $(document).ready(initResizable);
/* @license-end */</script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectlogo"><img alt="Logo" src="PhysXLogoBlack.png"/></td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.14 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
  initMenu('',true,false,'search.php','Search');
  $(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('PxImmediateMode_8h.html','');});
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div class="header">
  <div class="summary">
<a href="#nested-classes">Classes</a> &#124;
<a href="#func-members">Functions</a>  </div>
  <div class="headertitle">
<div class="title">PxImmediateMode.h File Reference</div>  </div>
</div><!--header-->
<div class="contents">
<div class="textblock"><code>#include &quot;<a class="el" href="PxPhysXConfig_8h_source.html">PxPhysXConfig.h</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="PxSolverDefs_8h_source.html">solver/PxSolverDefs.h</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="PxCollisionDefs_8h_source.html">collision/PxCollisionDefs.h</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="PxArticulationReducedCoordinate_8h_source.html">PxArticulationReducedCoordinate.h</a>&quot;</code><br />
</div>
<p><a href="PxImmediateMode_8h_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
Classes</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structPxRigidBodyData.html">PxRigidBodyData</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Structure to store rigid body properties.  <a href="structPxRigidBodyData.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxContactRecorder.html">PxContactRecorder</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Callback class to record contact points produced by immediate::PxGenerateContacts.  <a href="classPxContactRecorder.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structPxImmediateConstraint.html">PxImmediateConstraint</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structPxArticulationJointData.html">PxArticulationJointData</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structPxFeatherstoneArticulationJointData.html">PxFeatherstoneArticulationJointData</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structPxFeatherstoneArticulationData.html">PxFeatherstoneArticulationData</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structPxMutableLinkData.html">PxMutableLinkData</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structPxLinkData.html">PxLinkData</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structPxFeatherstoneArticulationLinkData.html">PxFeatherstoneArticulationLinkData</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:ga56e360f21e02eeed788a58782e77316a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__foundation.html#gaea189596f11f07c586d4757cc67e8f7f">PX_C_EXPORT</a> <a class="el" href="group__common.html#ga4636d12a5a01930fa258136f3f93366f">PX_PHYSX_CORE_API</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__immediatemode.html#ga56e360f21e02eeed788a58782e77316a">PxConstructSolverBodies</a> (const <a class="el" href="structPxRigidBodyData.html">PxRigidBodyData</a> *inRigidData, <a class="el" href="structPxSolverBodyData.html">PxSolverBodyData</a> *outSolverBodyData, const <a class="el" href="group__foundation.html#gacce5749db3dcfb916e98c253374264ed">PxU32</a> nbBodies, const <a class="el" href="classPxVec3.html">PxVec3</a> &amp;gravity, const PxReal dt)</td></tr>
<tr class="memdesc:ga56e360f21e02eeed788a58782e77316a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructs a <a class="el" href="structPxSolverBodyData.html">PxSolverBodyData</a> structure based on rigid body properties. Applies gravity, damping and clamps maximum velocity.  <a href="group__immediatemode.html#ga56e360f21e02eeed788a58782e77316a">More...</a><br /></td></tr>
<tr class="separator:ga56e360f21e02eeed788a58782e77316a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gab1ff672bf5a0569d6cc5f137142b1c1d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__foundation.html#gaea189596f11f07c586d4757cc67e8f7f">PX_C_EXPORT</a> <a class="el" href="group__common.html#ga4636d12a5a01930fa258136f3f93366f">PX_PHYSX_CORE_API</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__immediatemode.html#gab1ff672bf5a0569d6cc5f137142b1c1d">PxConstructStaticSolverBody</a> (const <a class="el" href="classPxTransform.html">PxTransform</a> &amp;globalPose, <a class="el" href="structPxSolverBodyData.html">PxSolverBodyData</a> &amp;solverBodyData)</td></tr>
<tr class="memdesc:gab1ff672bf5a0569d6cc5f137142b1c1d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructs a <a class="el" href="structPxSolverBodyData.html">PxSolverBodyData</a> structure for a static body at a given pose.  <a href="group__immediatemode.html#gab1ff672bf5a0569d6cc5f137142b1c1d">More...</a><br /></td></tr>
<tr class="separator:gab1ff672bf5a0569d6cc5f137142b1c1d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga02aa17b8f928f23a16520036c572e862"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__foundation.html#gaea189596f11f07c586d4757cc67e8f7f">PX_C_EXPORT</a> <a class="el" href="group__common.html#ga4636d12a5a01930fa258136f3f93366f">PX_PHYSX_CORE_API</a> <a class="el" href="group__foundation.html#gacce5749db3dcfb916e98c253374264ed">PxU32</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__immediatemode.html#ga02aa17b8f928f23a16520036c572e862">PxBatchConstraints</a> (const <a class="el" href="structPxSolverConstraintDesc.html">PxSolverConstraintDesc</a> *solverConstraintDescs, const <a class="el" href="group__foundation.html#gacce5749db3dcfb916e98c253374264ed">PxU32</a> nbConstraints, <a class="el" href="structPxSolverBody.html">PxSolverBody</a> *solverBodies, const <a class="el" href="group__foundation.html#gacce5749db3dcfb916e98c253374264ed">PxU32</a> nbBodies, <a class="el" href="structPxConstraintBatchHeader.html">PxConstraintBatchHeader</a> *outBatchHeaders, <a class="el" href="structPxSolverConstraintDesc.html">PxSolverConstraintDesc</a> *outOrderedConstraintDescs, Dy::ArticulationV **articulations=NULL, const <a class="el" href="group__foundation.html#gacce5749db3dcfb916e98c253374264ed">PxU32</a> nbArticulations=0)</td></tr>
<tr class="memdesc:ga02aa17b8f928f23a16520036c572e862"><td class="mdescLeft">&#160;</td><td class="mdescRight">Groups together sets of independent <a class="el" href="structPxSolverConstraintDesc.html">PxSolverConstraintDesc</a> objects to be solved using SIMD SOA approach.  <a href="group__immediatemode.html#ga02aa17b8f928f23a16520036c572e862">More...</a><br /></td></tr>
<tr class="separator:ga02aa17b8f928f23a16520036c572e862"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga02dd00aca33ee58a65f32472719e9b07"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__foundation.html#gaea189596f11f07c586d4757cc67e8f7f">PX_C_EXPORT</a> <a class="el" href="group__common.html#ga4636d12a5a01930fa258136f3f93366f">PX_PHYSX_CORE_API</a> bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__immediatemode.html#ga02dd00aca33ee58a65f32472719e9b07">PxCreateContactConstraints</a> (<a class="el" href="structPxConstraintBatchHeader.html">PxConstraintBatchHeader</a> *batchHeaders, const <a class="el" href="group__foundation.html#gacce5749db3dcfb916e98c253374264ed">PxU32</a> nbHeaders, <a class="el" href="structPxSolverContactDesc.html">PxSolverContactDesc</a> *contactDescs, <a class="el" href="classPxConstraintAllocator.html">PxConstraintAllocator</a> &amp;allocator, const PxReal invDt, const PxReal bounceThreshold, const PxReal frictionOffsetThreshold, const PxReal correlationDistance)</td></tr>
<tr class="memdesc:ga02dd00aca33ee58a65f32472719e9b07"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates a set of contact constraint blocks. Note that, depending the results of PxBatchConstraints, each batchHeader may refer to up to 4 solverConstraintDescs. This function will allocate both constraint and friction patch data via the <a class="el" href="classPxConstraintAllocator.html">PxConstraintAllocator</a> provided. Constraint data is only valid until PxSolveConstraints has completed. Friction data is to be retained and provided by the application for friction correlation.  <a href="group__immediatemode.html#ga02dd00aca33ee58a65f32472719e9b07">More...</a><br /></td></tr>
<tr class="separator:ga02dd00aca33ee58a65f32472719e9b07"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga8db0a2ecb56789d5311172ce228b7740"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__foundation.html#gaea189596f11f07c586d4757cc67e8f7f">PX_C_EXPORT</a> <a class="el" href="group__common.html#ga4636d12a5a01930fa258136f3f93366f">PX_PHYSX_CORE_API</a> bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__immediatemode.html#ga8db0a2ecb56789d5311172ce228b7740">PxCreateJointConstraints</a> (<a class="el" href="structPxConstraintBatchHeader.html">PxConstraintBatchHeader</a> *batchHeaders, const <a class="el" href="group__foundation.html#gacce5749db3dcfb916e98c253374264ed">PxU32</a> nbHeaders, <a class="el" href="structPxSolverConstraintPrepDesc.html">PxSolverConstraintPrepDesc</a> *jointDescs, <a class="el" href="classPxConstraintAllocator.html">PxConstraintAllocator</a> &amp;allocator, const PxReal dt, const PxReal invDt)</td></tr>
<tr class="memdesc:ga8db0a2ecb56789d5311172ce228b7740"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates a set of joint constraint blocks. Note that, depending the results of PxBatchConstraints, the batchHeader may refer to up to 4 solverConstraintDescs.  <a href="group__immediatemode.html#ga8db0a2ecb56789d5311172ce228b7740">More...</a><br /></td></tr>
<tr class="separator:ga8db0a2ecb56789d5311172ce228b7740"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gab92fb9ab349962c5271c9644d3ec9f71"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__foundation.html#gaea189596f11f07c586d4757cc67e8f7f">PX_C_EXPORT</a> <a class="el" href="group__common.html#ga4636d12a5a01930fa258136f3f93366f">PX_PHYSX_CORE_API</a> bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__immediatemode.html#gab92fb9ab349962c5271c9644d3ec9f71">PxCreateJointConstraintsWithShaders</a> (<a class="el" href="structPxConstraintBatchHeader.html">PxConstraintBatchHeader</a> *batchHeaders, const <a class="el" href="group__foundation.html#gacce5749db3dcfb916e98c253374264ed">PxU32</a> nbBatchHeaders, <a class="el" href="classPxConstraint.html">PxConstraint</a> **constraints, <a class="el" href="structPxSolverConstraintPrepDesc.html">PxSolverConstraintPrepDesc</a> *jointDescs, <a class="el" href="classPxConstraintAllocator.html">PxConstraintAllocator</a> &amp;allocator, const PxReal dt, const PxReal invDt)</td></tr>
<tr class="memdesc:gab92fb9ab349962c5271c9644d3ec9f71"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates a set of joint constraint blocks. This function runs joint shaders defined inside PxConstraint** param, fills in joint row information in jointDescs and then calls PxCreateJointConstraints.  <a href="group__immediatemode.html#gab92fb9ab349962c5271c9644d3ec9f71">More...</a><br /></td></tr>
<tr class="separator:gab92fb9ab349962c5271c9644d3ec9f71"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga9c55ff4fd977b9c0e3e0c629f5b32326"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__foundation.html#gaea189596f11f07c586d4757cc67e8f7f">PX_C_EXPORT</a> <a class="el" href="group__common.html#ga4636d12a5a01930fa258136f3f93366f">PX_PHYSX_CORE_API</a> bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__immediatemode.html#ga9c55ff4fd977b9c0e3e0c629f5b32326">PxCreateJointConstraintsWithImmediateShaders</a> (<a class="el" href="structPxConstraintBatchHeader.html">PxConstraintBatchHeader</a> *batchHeaders, const <a class="el" href="group__foundation.html#gacce5749db3dcfb916e98c253374264ed">PxU32</a> nbBatchHeaders, <a class="el" href="structPxImmediateConstraint.html">PxImmediateConstraint</a> *constraints, <a class="el" href="structPxSolverConstraintPrepDesc.html">PxSolverConstraintPrepDesc</a> *jointDescs, <a class="el" href="classPxConstraintAllocator.html">PxConstraintAllocator</a> &amp;allocator, const PxReal dt, const PxReal invDt)</td></tr>
<tr class="memdesc:ga9c55ff4fd977b9c0e3e0c629f5b32326"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates a set of joint constraint blocks. This function runs joint shaders defined inside PxImmediateConstraint* param, fills in joint row information in jointDescs and then calls PxCreateJointConstraints.  <a href="group__immediatemode.html#ga9c55ff4fd977b9c0e3e0c629f5b32326">More...</a><br /></td></tr>
<tr class="separator:ga9c55ff4fd977b9c0e3e0c629f5b32326"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gae59ded2b77c594a690169036785f2ef5"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__foundation.html#gaea189596f11f07c586d4757cc67e8f7f">PX_C_EXPORT</a> <a class="el" href="group__common.html#ga4636d12a5a01930fa258136f3f93366f">PX_PHYSX_CORE_API</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__immediatemode.html#gae59ded2b77c594a690169036785f2ef5">PxSolveConstraints</a> (const <a class="el" href="structPxConstraintBatchHeader.html">PxConstraintBatchHeader</a> *batchHeaders, const <a class="el" href="group__foundation.html#gacce5749db3dcfb916e98c253374264ed">PxU32</a> nbBatchHeaders, const <a class="el" href="structPxSolverConstraintDesc.html">PxSolverConstraintDesc</a> *solverConstraintDescs, const <a class="el" href="structPxSolverBody.html">PxSolverBody</a> *solverBodies, <a class="el" href="classPxVec3.html">PxVec3</a> *linearMotionVelocity, <a class="el" href="classPxVec3.html">PxVec3</a> *angularMotionVelocity, const <a class="el" href="group__foundation.html#gacce5749db3dcfb916e98c253374264ed">PxU32</a> nbSolverBodies, const <a class="el" href="group__foundation.html#gacce5749db3dcfb916e98c253374264ed">PxU32</a> nbPositionIterations, const <a class="el" href="group__foundation.html#gacce5749db3dcfb916e98c253374264ed">PxU32</a> nbVelocityIterations, const float dt=0.0f, const float invDt=0.0f, const PxU32 nbSolverArticulations=0, Dy::ArticulationV **solverArticulations=NULL)</td></tr>
<tr class="memdesc:gae59ded2b77c594a690169036785f2ef5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Iteratively solves the set of constraints defined by the provided <a class="el" href="structPxConstraintBatchHeader.html">PxConstraintBatchHeader</a> and <a class="el" href="structPxSolverConstraintDesc.html">PxSolverConstraintDesc</a> structures. Updates deltaVelocities inside the <a class="el" href="structPxSolverBody.html">PxSolverBody</a> structures. Produces resulting linear and angular motion velocities.  <a href="group__immediatemode.html#gae59ded2b77c594a690169036785f2ef5">More...</a><br /></td></tr>
<tr class="separator:gae59ded2b77c594a690169036785f2ef5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gad743f4cb0eef3d3b166bfa0ff548ca5f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__foundation.html#gaea189596f11f07c586d4757cc67e8f7f">PX_C_EXPORT</a> <a class="el" href="group__common.html#ga4636d12a5a01930fa258136f3f93366f">PX_PHYSX_CORE_API</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__immediatemode.html#gad743f4cb0eef3d3b166bfa0ff548ca5f">PxIntegrateSolverBodies</a> (<a class="el" href="structPxSolverBodyData.html">PxSolverBodyData</a> *solverBodyData, <a class="el" href="structPxSolverBody.html">PxSolverBody</a> *solverBody, const <a class="el" href="classPxVec3.html">PxVec3</a> *linearMotionVelocity, const <a class="el" href="classPxVec3.html">PxVec3</a> *angularMotionState, const <a class="el" href="group__foundation.html#gacce5749db3dcfb916e98c253374264ed">PxU32</a> nbBodiesToIntegrate, const PxReal dt)</td></tr>
<tr class="memdesc:gad743f4cb0eef3d3b166bfa0ff548ca5f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Integrates a rigid body, returning the new velocities and transforms. After this function has been called, solverBodyData stores all the body's velocity data.  <a href="group__immediatemode.html#gad743f4cb0eef3d3b166bfa0ff548ca5f">More...</a><br /></td></tr>
<tr class="separator:gad743f4cb0eef3d3b166bfa0ff548ca5f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga43ee6393438e91aa05bb2790559104b7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__foundation.html#gaea189596f11f07c586d4757cc67e8f7f">PX_C_EXPORT</a> <a class="el" href="group__common.html#ga4636d12a5a01930fa258136f3f93366f">PX_PHYSX_CORE_API</a> bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__immediatemode.html#ga43ee6393438e91aa05bb2790559104b7">PxGenerateContacts</a> (const <a class="el" href="classPxGeometry.html">PxGeometry</a> *const *geom0, const <a class="el" href="classPxGeometry.html">PxGeometry</a> *const *geom1, const <a class="el" href="classPxTransform.html">PxTransform</a> *pose0, const <a class="el" href="classPxTransform.html">PxTransform</a> *pose1, <a class="el" href="structPxCache.html">PxCache</a> *contactCache, const <a class="el" href="group__foundation.html#gacce5749db3dcfb916e98c253374264ed">PxU32</a> nbPairs, <a class="el" href="classPxContactRecorder.html">PxContactRecorder</a> &amp;contactRecorder, const PxReal contactDistance, const PxReal meshContactMargin, const PxReal toleranceLength, <a class="el" href="classPxCacheAllocator.html">PxCacheAllocator</a> &amp;allocator)</td></tr>
<tr class="memdesc:ga43ee6393438e91aa05bb2790559104b7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Performs contact generation for a given pair of geometries at the specified poses. Produced contacts are stored in the provided Gu::ContactBuffer. Information is cached in <a class="el" href="structPxCache.html" title="A structure to cache contact information produced by LL contact gen functions. ">PxCache</a> structure to accelerate future contact generation between pairs. This cache data is valid only as long as the memory provided by <a class="el" href="classPxCacheAllocator.html">PxCacheAllocator</a> has not been released/re-used. Recommendation is to retain that data for a single simulation frame, discarding cached data after 2 frames. If the cached memory has been released/re-used prior to the corresponding pair having contact generation performed again, it is the application's responsibility to reset the <a class="el" href="structPxCache.html" title="A structure to cache contact information produced by LL contact gen functions. ">PxCache</a>.  <a href="group__immediatemode.html#ga43ee6393438e91aa05bb2790559104b7">More...</a><br /></td></tr>
<tr class="separator:ga43ee6393438e91aa05bb2790559104b7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga6d8ad8d1a6156da1f4473d4ec4922016"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__foundation.html#gaea189596f11f07c586d4757cc67e8f7f">PX_C_EXPORT</a> <a class="el" href="group__common.html#ga4636d12a5a01930fa258136f3f93366f">PX_PHYSX_CORE_API</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__immediatemode.html#ga6d8ad8d1a6156da1f4473d4ec4922016">PxRegisterImmediateArticulations</a> ()</td></tr>
<tr class="memdesc:ga6d8ad8d1a6156da1f4473d4ec4922016"><td class="mdescLeft">&#160;</td><td class="mdescRight">Register articulation-related solver functions. This is equivalent to <a class="el" href="group__physics.html#gafa22d81f1318ef3c37f1d746ac686c22" title="Enables the usage of the reduced coordinate articulations feature. This function is called automatica...">PxRegisterArticulationsReducedCoordinate()</a> for PxScene-level articulations. Call this first to enable reduced coordinates articulations in immediate mode.  <a href="group__immediatemode.html#ga6d8ad8d1a6156da1f4473d4ec4922016">More...</a><br /></td></tr>
<tr class="separator:ga6d8ad8d1a6156da1f4473d4ec4922016"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga86ececaefac85fdb67e6e46332eedc75"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__foundation.html#gaea189596f11f07c586d4757cc67e8f7f">PX_C_EXPORT</a> <a class="el" href="group__common.html#ga4636d12a5a01930fa258136f3f93366f">PX_PHYSX_CORE_API</a> Dy::ArticulationV *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__immediatemode.html#ga86ececaefac85fdb67e6e46332eedc75">PxCreateFeatherstoneArticulation</a> (const <a class="el" href="structPxFeatherstoneArticulationData.html">PxFeatherstoneArticulationData</a> &amp;data)</td></tr>
<tr class="memdesc:ga86ececaefac85fdb67e6e46332eedc75"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates an immediate-mode reduced-coordinate articulation.  <a href="group__immediatemode.html#ga86ececaefac85fdb67e6e46332eedc75">More...</a><br /></td></tr>
<tr class="separator:ga86ececaefac85fdb67e6e46332eedc75"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga5df3edcbf7b639900668b49ff50eda22"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__foundation.html#gaea189596f11f07c586d4757cc67e8f7f">PX_C_EXPORT</a> <a class="el" href="group__common.html#ga4636d12a5a01930fa258136f3f93366f">PX_PHYSX_CORE_API</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__immediatemode.html#ga5df3edcbf7b639900668b49ff50eda22">PxReleaseArticulation</a> (Dy::ArticulationV *articulation)</td></tr>
<tr class="memdesc:ga5df3edcbf7b639900668b49ff50eda22"><td class="mdescLeft">&#160;</td><td class="mdescRight">Releases an immediate-mode reduced-coordinate articulation.  <a href="group__immediatemode.html#ga5df3edcbf7b639900668b49ff50eda22">More...</a><br /></td></tr>
<tr class="separator:ga5df3edcbf7b639900668b49ff50eda22"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaa29d46bee46ce200c9e8a2a6f353c0a1"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__foundation.html#gaea189596f11f07c586d4757cc67e8f7f">PX_C_EXPORT</a> <a class="el" href="group__common.html#ga4636d12a5a01930fa258136f3f93366f">PX_PHYSX_CORE_API</a> <a class="el" href="classPxArticulationCache.html">PxArticulationCache</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__immediatemode.html#gaa29d46bee46ce200c9e8a2a6f353c0a1">PxCreateArticulationCache</a> (Dy::ArticulationV *articulation)</td></tr>
<tr class="memdesc:gaa29d46bee46ce200c9e8a2a6f353c0a1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates an articulation cache.  <a href="group__immediatemode.html#gaa29d46bee46ce200c9e8a2a6f353c0a1">More...</a><br /></td></tr>
<tr class="separator:gaa29d46bee46ce200c9e8a2a6f353c0a1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga5d5ba6074b5169c269d7e4c56ac0467d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__foundation.html#gaea189596f11f07c586d4757cc67e8f7f">PX_C_EXPORT</a> <a class="el" href="group__common.html#ga4636d12a5a01930fa258136f3f93366f">PX_PHYSX_CORE_API</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__immediatemode.html#ga5d5ba6074b5169c269d7e4c56ac0467d">PxCopyInternalStateToArticulationCache</a> (Dy::ArticulationV *articulation, <a class="el" href="classPxArticulationCache.html">PxArticulationCache</a> &amp;cache, <a class="el" href="group__physics.html#ga1619e335e650ffbd52cd4961bc0dea9a">PxArticulationCacheFlags</a> flag)</td></tr>
<tr class="memdesc:ga5d5ba6074b5169c269d7e4c56ac0467d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Copy the internal data of the articulation to the cache.  <a href="group__immediatemode.html#ga5d5ba6074b5169c269d7e4c56ac0467d">More...</a><br /></td></tr>
<tr class="separator:ga5d5ba6074b5169c269d7e4c56ac0467d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gadcdee80ca02f10c0e31a367c7d30ca91"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__foundation.html#gaea189596f11f07c586d4757cc67e8f7f">PX_C_EXPORT</a> <a class="el" href="group__common.html#ga4636d12a5a01930fa258136f3f93366f">PX_PHYSX_CORE_API</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__immediatemode.html#gadcdee80ca02f10c0e31a367c7d30ca91">PxApplyArticulationCache</a> (Dy::ArticulationV *articulation, <a class="el" href="classPxArticulationCache.html">PxArticulationCache</a> &amp;cache, <a class="el" href="group__physics.html#ga1619e335e650ffbd52cd4961bc0dea9a">PxArticulationCacheFlags</a> flag)</td></tr>
<tr class="memdesc:gadcdee80ca02f10c0e31a367c7d30ca91"><td class="mdescLeft">&#160;</td><td class="mdescRight">Apply the user defined data in the cache to the articulation system.  <a href="group__immediatemode.html#gadcdee80ca02f10c0e31a367c7d30ca91">More...</a><br /></td></tr>
<tr class="separator:gadcdee80ca02f10c0e31a367c7d30ca91"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga5189b5d63b22e3d7e1da1d94aa6854b7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__foundation.html#gaea189596f11f07c586d4757cc67e8f7f">PX_C_EXPORT</a> <a class="el" href="group__common.html#ga4636d12a5a01930fa258136f3f93366f">PX_PHYSX_CORE_API</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__immediatemode.html#ga5189b5d63b22e3d7e1da1d94aa6854b7">PxReleaseArticulationCache</a> (<a class="el" href="classPxArticulationCache.html">PxArticulationCache</a> &amp;cache)</td></tr>
<tr class="memdesc:ga5189b5d63b22e3d7e1da1d94aa6854b7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Release an articulation cache.  <a href="group__immediatemode.html#ga5189b5d63b22e3d7e1da1d94aa6854b7">More...</a><br /></td></tr>
<tr class="separator:ga5189b5d63b22e3d7e1da1d94aa6854b7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga8c2749699d2f9e22cfb34ed83a7b80ce"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__foundation.html#gaea189596f11f07c586d4757cc67e8f7f">PX_C_EXPORT</a> <a class="el" href="group__common.html#ga4636d12a5a01930fa258136f3f93366f">PX_PHYSX_CORE_API</a> <a class="el" href="namespaceDy.html#a5be4d4b78399a053941fded260b04e61">Dy::ArticulationLinkHandle</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__immediatemode.html#ga8c2749699d2f9e22cfb34ed83a7b80ce">PxAddArticulationLink</a> (Dy::ArticulationV *articulation, const <a class="el" href="structPxFeatherstoneArticulationLinkData.html">PxFeatherstoneArticulationLinkData</a> &amp;data, bool isLastLink=false)</td></tr>
<tr class="memdesc:ga8c2749699d2f9e22cfb34ed83a7b80ce"><td class="mdescLeft">&#160;</td><td class="mdescRight">Adds a link to an immediate-mode reduced-coordinate articulation. The articulation becomes the link's owner/parent.  <a href="group__immediatemode.html#ga8c2749699d2f9e22cfb34ed83a7b80ce">More...</a><br /></td></tr>
<tr class="separator:ga8c2749699d2f9e22cfb34ed83a7b80ce"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaee273e15ba5dbdb78948da2d2c64dc7f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__foundation.html#gaea189596f11f07c586d4757cc67e8f7f">PX_C_EXPORT</a> <a class="el" href="group__common.html#ga4636d12a5a01930fa258136f3f93366f">PX_PHYSX_CORE_API</a> Dy::ArticulationV *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__immediatemode.html#gaee273e15ba5dbdb78948da2d2c64dc7f">PxGetLinkArticulation</a> (const <a class="el" href="namespaceDy.html#a5be4d4b78399a053941fded260b04e61">Dy::ArticulationLinkHandle</a> link)</td></tr>
<tr class="memdesc:gaee273e15ba5dbdb78948da2d2c64dc7f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Retrieves owner/parent articulation handle from a link handle.  <a href="group__immediatemode.html#gaee273e15ba5dbdb78948da2d2c64dc7f">More...</a><br /></td></tr>
<tr class="separator:gaee273e15ba5dbdb78948da2d2c64dc7f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga4371afa7be6b3dfd04fd94491b7ccf1e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__foundation.html#gaea189596f11f07c586d4757cc67e8f7f">PX_C_EXPORT</a> <a class="el" href="group__common.html#ga4636d12a5a01930fa258136f3f93366f">PX_PHYSX_CORE_API</a> <a class="el" href="group__foundation.html#gacce5749db3dcfb916e98c253374264ed">PxU32</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__immediatemode.html#ga4371afa7be6b3dfd04fd94491b7ccf1e">PxGetLinkIndex</a> (const <a class="el" href="namespaceDy.html#a5be4d4b78399a053941fded260b04e61">Dy::ArticulationLinkHandle</a> link)</td></tr>
<tr class="memdesc:ga4371afa7be6b3dfd04fd94491b7ccf1e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Retrieves link index from a link handle.  <a href="group__immediatemode.html#ga4371afa7be6b3dfd04fd94491b7ccf1e">More...</a><br /></td></tr>
<tr class="separator:ga4371afa7be6b3dfd04fd94491b7ccf1e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga54ca8e8099a543250c31f23452e7bb07"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__foundation.html#gaea189596f11f07c586d4757cc67e8f7f">PX_C_EXPORT</a> <a class="el" href="group__common.html#ga4636d12a5a01930fa258136f3f93366f">PX_PHYSX_CORE_API</a> bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__immediatemode.html#ga54ca8e8099a543250c31f23452e7bb07">PxGetLinkData</a> (const <a class="el" href="namespaceDy.html#a5be4d4b78399a053941fded260b04e61">Dy::ArticulationLinkHandle</a> link, <a class="el" href="structPxLinkData.html">PxLinkData</a> &amp;data)</td></tr>
<tr class="memdesc:ga54ca8e8099a543250c31f23452e7bb07"><td class="mdescLeft">&#160;</td><td class="mdescRight">Retrieves non-mutable link data from a link handle. The data here is computed by the articulation code but cannot be directly changed by users.  <a href="group__immediatemode.html#ga54ca8e8099a543250c31f23452e7bb07">More...</a><br /></td></tr>
<tr class="separator:ga54ca8e8099a543250c31f23452e7bb07"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gae81a4356d18a396730d81d94f28bbd0e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__foundation.html#gaea189596f11f07c586d4757cc67e8f7f">PX_C_EXPORT</a> <a class="el" href="group__common.html#ga4636d12a5a01930fa258136f3f93366f">PX_PHYSX_CORE_API</a> <a class="el" href="group__foundation.html#gacce5749db3dcfb916e98c253374264ed">PxU32</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__immediatemode.html#gae81a4356d18a396730d81d94f28bbd0e">PxGetAllLinkData</a> (const Dy::ArticulationV *articulation, <a class="el" href="structPxLinkData.html">PxLinkData</a> *data)</td></tr>
<tr class="memdesc:gae81a4356d18a396730d81d94f28bbd0e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Retrieves non-mutable link data from an articulation handle (all links). The data here is computed by the articulation code but cannot be directly changed by users.  <a href="group__immediatemode.html#gae81a4356d18a396730d81d94f28bbd0e">More...</a><br /></td></tr>
<tr class="separator:gae81a4356d18a396730d81d94f28bbd0e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gad77847bba5b58c7439d0c2463643d041"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__foundation.html#gaea189596f11f07c586d4757cc67e8f7f">PX_C_EXPORT</a> <a class="el" href="group__common.html#ga4636d12a5a01930fa258136f3f93366f">PX_PHYSX_CORE_API</a> bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__immediatemode.html#gad77847bba5b58c7439d0c2463643d041">PxGetMutableLinkData</a> (const <a class="el" href="namespaceDy.html#a5be4d4b78399a053941fded260b04e61">Dy::ArticulationLinkHandle</a> link, <a class="el" href="structPxMutableLinkData.html">PxMutableLinkData</a> &amp;data)</td></tr>
<tr class="memdesc:gad77847bba5b58c7439d0c2463643d041"><td class="mdescLeft">&#160;</td><td class="mdescRight">Retrieves mutable link data from a link handle.  <a href="group__immediatemode.html#gad77847bba5b58c7439d0c2463643d041">More...</a><br /></td></tr>
<tr class="separator:gad77847bba5b58c7439d0c2463643d041"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga404f7b347df78a632073246c46c173ec"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__foundation.html#gaea189596f11f07c586d4757cc67e8f7f">PX_C_EXPORT</a> <a class="el" href="group__common.html#ga4636d12a5a01930fa258136f3f93366f">PX_PHYSX_CORE_API</a> bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__immediatemode.html#ga404f7b347df78a632073246c46c173ec">PxSetMutableLinkData</a> (<a class="el" href="namespaceDy.html#a5be4d4b78399a053941fded260b04e61">Dy::ArticulationLinkHandle</a> link, const <a class="el" href="structPxMutableLinkData.html">PxMutableLinkData</a> &amp;data)</td></tr>
<tr class="memdesc:ga404f7b347df78a632073246c46c173ec"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets mutable link data for given link.  <a href="group__immediatemode.html#ga404f7b347df78a632073246c46c173ec">More...</a><br /></td></tr>
<tr class="separator:ga404f7b347df78a632073246c46c173ec"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga8bdb9d1d481fad7a05c3dc9212c4f734"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__foundation.html#gaea189596f11f07c586d4757cc67e8f7f">PX_C_EXPORT</a> <a class="el" href="group__common.html#ga4636d12a5a01930fa258136f3f93366f">PX_PHYSX_CORE_API</a> bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__immediatemode.html#ga8bdb9d1d481fad7a05c3dc9212c4f734">PxGetJointData</a> (const <a class="el" href="namespaceDy.html#a5be4d4b78399a053941fded260b04e61">Dy::ArticulationLinkHandle</a> link, <a class="el" href="structPxFeatherstoneArticulationJointData.html">PxFeatherstoneArticulationJointData</a> &amp;data)</td></tr>
<tr class="memdesc:ga8bdb9d1d481fad7a05c3dc9212c4f734"><td class="mdescLeft">&#160;</td><td class="mdescRight">Retrieves joint data from a link handle.  <a href="group__immediatemode.html#ga8bdb9d1d481fad7a05c3dc9212c4f734">More...</a><br /></td></tr>
<tr class="separator:ga8bdb9d1d481fad7a05c3dc9212c4f734"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga29ab413fa60db236c4d9ef93081f6928"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__foundation.html#gaea189596f11f07c586d4757cc67e8f7f">PX_C_EXPORT</a> <a class="el" href="group__common.html#ga4636d12a5a01930fa258136f3f93366f">PX_PHYSX_CORE_API</a> bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__immediatemode.html#ga29ab413fa60db236c4d9ef93081f6928">PxSetJointData</a> (<a class="el" href="namespaceDy.html#a5be4d4b78399a053941fded260b04e61">Dy::ArticulationLinkHandle</a> link, const <a class="el" href="structPxFeatherstoneArticulationJointData.html">PxFeatherstoneArticulationJointData</a> &amp;data)</td></tr>
<tr class="memdesc:ga29ab413fa60db236c4d9ef93081f6928"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets joint data for given link.  <a href="group__immediatemode.html#ga29ab413fa60db236c4d9ef93081f6928">More...</a><br /></td></tr>
<tr class="separator:ga29ab413fa60db236c4d9ef93081f6928"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga4d9bc901669de439d061962e7ab9509e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__foundation.html#gaea189596f11f07c586d4757cc67e8f7f">PX_C_EXPORT</a> <a class="el" href="group__common.html#ga4636d12a5a01930fa258136f3f93366f">PX_PHYSX_CORE_API</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__immediatemode.html#ga4d9bc901669de439d061962e7ab9509e">PxComputeUnconstrainedVelocities</a> (Dy::ArticulationV *articulation, const <a class="el" href="classPxVec3.html">PxVec3</a> &amp;gravity, const PxReal dt)</td></tr>
<tr class="memdesc:ga4d9bc901669de439d061962e7ab9509e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Computes unconstrained velocities for a given articulation.  <a href="group__immediatemode.html#ga4d9bc901669de439d061962e7ab9509e">More...</a><br /></td></tr>
<tr class="separator:ga4d9bc901669de439d061962e7ab9509e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gac31250973d5aca117634091dcf184ffc"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__foundation.html#gaea189596f11f07c586d4757cc67e8f7f">PX_C_EXPORT</a> <a class="el" href="group__common.html#ga4636d12a5a01930fa258136f3f93366f">PX_PHYSX_CORE_API</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__immediatemode.html#gac31250973d5aca117634091dcf184ffc">PxUpdateArticulationBodies</a> (Dy::ArticulationV *articulation, const PxReal dt)</td></tr>
<tr class="memdesc:gac31250973d5aca117634091dcf184ffc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Updates bodies for a given articulation.  <a href="group__immediatemode.html#gac31250973d5aca117634091dcf184ffc">More...</a><br /></td></tr>
<tr class="separator:gac31250973d5aca117634091dcf184ffc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga0bae177a8cae93690234bdcb6a29e8d9"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__foundation.html#gaea189596f11f07c586d4757cc67e8f7f">PX_C_EXPORT</a> <a class="el" href="group__common.html#ga4636d12a5a01930fa258136f3f93366f">PX_PHYSX_CORE_API</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__immediatemode.html#ga0bae177a8cae93690234bdcb6a29e8d9">PxComputeUnconstrainedVelocitiesTGS</a> (Dy::ArticulationV *articulation, const <a class="el" href="classPxVec3.html">PxVec3</a> &amp;gravity, const PxReal dt, const PxReal totalDt, const PxReal invDt, const PxReal invTotalDt)</td></tr>
<tr class="memdesc:ga0bae177a8cae93690234bdcb6a29e8d9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Computes unconstrained velocities for a given articulation.  <a href="group__immediatemode.html#ga0bae177a8cae93690234bdcb6a29e8d9">More...</a><br /></td></tr>
<tr class="separator:ga0bae177a8cae93690234bdcb6a29e8d9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga167edbc51a6406fe313f2eaade4bc9d2"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__foundation.html#gaea189596f11f07c586d4757cc67e8f7f">PX_C_EXPORT</a> <a class="el" href="group__common.html#ga4636d12a5a01930fa258136f3f93366f">PX_PHYSX_CORE_API</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__immediatemode.html#ga167edbc51a6406fe313f2eaade4bc9d2">PxUpdateArticulationBodiesTGS</a> (Dy::ArticulationV *articulation, const PxReal dt)</td></tr>
<tr class="memdesc:ga167edbc51a6406fe313f2eaade4bc9d2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Updates bodies for a given articulation.  <a href="group__immediatemode.html#ga167edbc51a6406fe313f2eaade4bc9d2">More...</a><br /></td></tr>
<tr class="separator:ga167edbc51a6406fe313f2eaade4bc9d2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaaa4db837c3284147da8c85356d969258"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__foundation.html#gaea189596f11f07c586d4757cc67e8f7f">PX_C_EXPORT</a> <a class="el" href="group__common.html#ga4636d12a5a01930fa258136f3f93366f">PX_PHYSX_CORE_API</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__immediatemode.html#gaaa4db837c3284147da8c85356d969258">PxConstructSolverBodiesTGS</a> (const <a class="el" href="structPxRigidBodyData.html">PxRigidBodyData</a> *inRigidData, <a class="el" href="structPxTGSSolverBodyVel.html">PxTGSSolverBodyVel</a> *outSolverBodyVel, <a class="el" href="structPxTGSSolverBodyTxInertia.html">PxTGSSolverBodyTxInertia</a> *outSolverBodyTxInertia, <a class="el" href="structPxTGSSolverBodyData.html">PxTGSSolverBodyData</a> *outSolverBodyData, const <a class="el" href="group__foundation.html#gacce5749db3dcfb916e98c253374264ed">PxU32</a> nbBodies, const <a class="el" href="classPxVec3.html">PxVec3</a> &amp;gravity, const PxReal dt)</td></tr>
<tr class="memdesc:gaaa4db837c3284147da8c85356d969258"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructs a <a class="el" href="structPxSolverBodyData.html">PxSolverBodyData</a> structure based on rigid body properties. Applies gravity, damping and clamps maximum velocity.  <a href="group__immediatemode.html#gaaa4db837c3284147da8c85356d969258">More...</a><br /></td></tr>
<tr class="separator:gaaa4db837c3284147da8c85356d969258"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga2dc9fa88d851b81cb15e382060e27ec7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__foundation.html#gaea189596f11f07c586d4757cc67e8f7f">PX_C_EXPORT</a> <a class="el" href="group__common.html#ga4636d12a5a01930fa258136f3f93366f">PX_PHYSX_CORE_API</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__immediatemode.html#ga2dc9fa88d851b81cb15e382060e27ec7">PxConstructStaticSolverBodyTGS</a> (const <a class="el" href="classPxTransform.html">PxTransform</a> &amp;globalPose, <a class="el" href="structPxTGSSolverBodyVel.html">PxTGSSolverBodyVel</a> &amp;solverBodyVel, <a class="el" href="structPxTGSSolverBodyTxInertia.html">PxTGSSolverBodyTxInertia</a> &amp;solverBodyTxInertia, <a class="el" href="structPxTGSSolverBodyData.html">PxTGSSolverBodyData</a> &amp;solverBodyData)</td></tr>
<tr class="memdesc:ga2dc9fa88d851b81cb15e382060e27ec7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructs a <a class="el" href="structPxSolverBodyData.html">PxSolverBodyData</a> structure for a static body at a given pose.  <a href="group__immediatemode.html#ga2dc9fa88d851b81cb15e382060e27ec7">More...</a><br /></td></tr>
<tr class="separator:ga2dc9fa88d851b81cb15e382060e27ec7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga78e8a4101cc5ede158fd8ae7b9a9d13b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__foundation.html#gaea189596f11f07c586d4757cc67e8f7f">PX_C_EXPORT</a> <a class="el" href="group__common.html#ga4636d12a5a01930fa258136f3f93366f">PX_PHYSX_CORE_API</a> <a class="el" href="group__foundation.html#gacce5749db3dcfb916e98c253374264ed">PxU32</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__immediatemode.html#ga78e8a4101cc5ede158fd8ae7b9a9d13b">PxBatchConstraintsTGS</a> (const <a class="el" href="structPxSolverConstraintDesc.html">PxSolverConstraintDesc</a> *solverConstraintDescs, const <a class="el" href="group__foundation.html#gacce5749db3dcfb916e98c253374264ed">PxU32</a> nbConstraints, <a class="el" href="structPxTGSSolverBodyVel.html">PxTGSSolverBodyVel</a> *solverBodies, const <a class="el" href="group__foundation.html#gacce5749db3dcfb916e98c253374264ed">PxU32</a> nbBodies, <a class="el" href="structPxConstraintBatchHeader.html">PxConstraintBatchHeader</a> *outBatchHeaders, <a class="el" href="structPxSolverConstraintDesc.html">PxSolverConstraintDesc</a> *outOrderedConstraintDescs, Dy::ArticulationV **articulations=NULL, const <a class="el" href="group__foundation.html#gacce5749db3dcfb916e98c253374264ed">PxU32</a> nbArticulations=0)</td></tr>
<tr class="memdesc:ga78e8a4101cc5ede158fd8ae7b9a9d13b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Groups together sets of independent <a class="el" href="structPxSolverConstraintDesc.html">PxSolverConstraintDesc</a> objects to be solved using SIMD SOA approach.  <a href="group__immediatemode.html#ga78e8a4101cc5ede158fd8ae7b9a9d13b">More...</a><br /></td></tr>
<tr class="separator:ga78e8a4101cc5ede158fd8ae7b9a9d13b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga81189e2221bba32ed064faf2769d9844"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__foundation.html#gaea189596f11f07c586d4757cc67e8f7f">PX_C_EXPORT</a> <a class="el" href="group__common.html#ga4636d12a5a01930fa258136f3f93366f">PX_PHYSX_CORE_API</a> bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__immediatemode.html#ga81189e2221bba32ed064faf2769d9844">PxCreateContactConstraintsTGS</a> (<a class="el" href="structPxConstraintBatchHeader.html">PxConstraintBatchHeader</a> *batchHeaders, const <a class="el" href="group__foundation.html#gacce5749db3dcfb916e98c253374264ed">PxU32</a> nbHeaders, <a class="el" href="structPxTGSSolverContactDesc.html">PxTGSSolverContactDesc</a> *contactDescs, <a class="el" href="classPxConstraintAllocator.html">PxConstraintAllocator</a> &amp;allocator, const PxReal invDt, const PxReal invTotalDt, const PxReal bounceThreshold, const PxReal frictionOffsetThreshold, const PxReal correlationDistance)</td></tr>
<tr class="memdesc:ga81189e2221bba32ed064faf2769d9844"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates a set of contact constraint blocks. Note that, depending the results of PxBatchConstraints, each batchHeader may refer to up to 4 solverConstraintDescs. This function will allocate both constraint and friction patch data via the <a class="el" href="classPxConstraintAllocator.html">PxConstraintAllocator</a> provided. Constraint data is only valid until PxSolveConstraints has completed. Friction data is to be retained and provided by the application for friction correlation.  <a href="group__immediatemode.html#ga81189e2221bba32ed064faf2769d9844">More...</a><br /></td></tr>
<tr class="separator:ga81189e2221bba32ed064faf2769d9844"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga6c5323528d0de709b168178bf9ddb0ac"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__foundation.html#gaea189596f11f07c586d4757cc67e8f7f">PX_C_EXPORT</a> <a class="el" href="group__common.html#ga4636d12a5a01930fa258136f3f93366f">PX_PHYSX_CORE_API</a> bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__immediatemode.html#ga6c5323528d0de709b168178bf9ddb0ac">PxCreateJointConstraintsTGS</a> (<a class="el" href="structPxConstraintBatchHeader.html">PxConstraintBatchHeader</a> *batchHeaders, const <a class="el" href="group__foundation.html#gacce5749db3dcfb916e98c253374264ed">PxU32</a> nbHeaders, <a class="el" href="structPxTGSSolverConstraintPrepDesc.html">PxTGSSolverConstraintPrepDesc</a> *jointDescs, <a class="el" href="classPxConstraintAllocator.html">PxConstraintAllocator</a> &amp;allocator, const PxReal dt, const PxReal totalDt, const PxReal invDt, const PxReal invTotalDt, const PxReal lengthScale)</td></tr>
<tr class="memdesc:ga6c5323528d0de709b168178bf9ddb0ac"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates a set of joint constraint blocks. Note that, depending the results of PxBatchConstraints, the batchHeader may refer to up to 4 solverConstraintDescs.  <a href="group__immediatemode.html#ga6c5323528d0de709b168178bf9ddb0ac">More...</a><br /></td></tr>
<tr class="separator:ga6c5323528d0de709b168178bf9ddb0ac"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga629b4a4c51411cad67e91991e74a1fa9"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__foundation.html#gaea189596f11f07c586d4757cc67e8f7f">PX_C_EXPORT</a> <a class="el" href="group__common.html#ga4636d12a5a01930fa258136f3f93366f">PX_PHYSX_CORE_API</a> bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__immediatemode.html#ga629b4a4c51411cad67e91991e74a1fa9">PxCreateJointConstraintsWithShadersTGS</a> (<a class="el" href="structPxConstraintBatchHeader.html">PxConstraintBatchHeader</a> *batchHeaders, const <a class="el" href="group__foundation.html#gacce5749db3dcfb916e98c253374264ed">PxU32</a> nbBatchHeaders, <a class="el" href="classPxConstraint.html">PxConstraint</a> **constraints, <a class="el" href="structPxTGSSolverConstraintPrepDesc.html">PxTGSSolverConstraintPrepDesc</a> *jointDescs, <a class="el" href="classPxConstraintAllocator.html">PxConstraintAllocator</a> &amp;allocator, const PxReal dt, const PxReal totalDt, const PxReal invDt, const PxReal invTotalDt, const PxReal lengthScale)</td></tr>
<tr class="memdesc:ga629b4a4c51411cad67e91991e74a1fa9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates a set of joint constraint blocks. This function runs joint shaders defined inside PxConstraint** param, fills in joint row information in jointDescs and then calls PxCreateJointConstraints.  <a href="group__immediatemode.html#ga629b4a4c51411cad67e91991e74a1fa9">More...</a><br /></td></tr>
<tr class="separator:ga629b4a4c51411cad67e91991e74a1fa9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gab61d264d8d74cb67dbbe06b041bde7bd"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__foundation.html#gaea189596f11f07c586d4757cc67e8f7f">PX_C_EXPORT</a> <a class="el" href="group__common.html#ga4636d12a5a01930fa258136f3f93366f">PX_PHYSX_CORE_API</a> bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__immediatemode.html#gab61d264d8d74cb67dbbe06b041bde7bd">PxCreateJointConstraintsWithImmediateShadersTGS</a> (<a class="el" href="structPxConstraintBatchHeader.html">PxConstraintBatchHeader</a> *batchHeaders, const <a class="el" href="group__foundation.html#gacce5749db3dcfb916e98c253374264ed">PxU32</a> nbBatchHeaders, <a class="el" href="structPxImmediateConstraint.html">PxImmediateConstraint</a> *constraints, <a class="el" href="structPxTGSSolverConstraintPrepDesc.html">PxTGSSolverConstraintPrepDesc</a> *jointDescs, <a class="el" href="classPxConstraintAllocator.html">PxConstraintAllocator</a> &amp;allocator, const PxReal dt, const PxReal totalDt, const PxReal invDt, const PxReal invTotalDt, const PxReal lengthScale)</td></tr>
<tr class="memdesc:gab61d264d8d74cb67dbbe06b041bde7bd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates a set of joint constraint blocks. This function runs joint shaders defined inside PxImmediateConstraint* param, fills in joint row information in jointDescs and then calls PxCreateJointConstraints.  <a href="group__immediatemode.html#gab61d264d8d74cb67dbbe06b041bde7bd">More...</a><br /></td></tr>
<tr class="separator:gab61d264d8d74cb67dbbe06b041bde7bd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga650d7b45abd5412722bd0f226df3d246"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__foundation.html#gaea189596f11f07c586d4757cc67e8f7f">PX_C_EXPORT</a> <a class="el" href="group__common.html#ga4636d12a5a01930fa258136f3f93366f">PX_PHYSX_CORE_API</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__immediatemode.html#ga650d7b45abd5412722bd0f226df3d246">PxSolveConstraintsTGS</a> (const <a class="el" href="structPxConstraintBatchHeader.html">PxConstraintBatchHeader</a> *batchHeaders, const <a class="el" href="group__foundation.html#gacce5749db3dcfb916e98c253374264ed">PxU32</a> nbBatchHeaders, const <a class="el" href="structPxSolverConstraintDesc.html">PxSolverConstraintDesc</a> *solverConstraintDescs, <a class="el" href="structPxTGSSolverBodyVel.html">PxTGSSolverBodyVel</a> *solverBodies, <a class="el" href="structPxTGSSolverBodyTxInertia.html">PxTGSSolverBodyTxInertia</a> *txInertias, const <a class="el" href="group__foundation.html#gacce5749db3dcfb916e98c253374264ed">PxU32</a> nbSolverBodies, const <a class="el" href="group__foundation.html#gacce5749db3dcfb916e98c253374264ed">PxU32</a> nbPositionIterations, const <a class="el" href="group__foundation.html#gacce5749db3dcfb916e98c253374264ed">PxU32</a> nbVelocityIterations, const float dt, const float invDt, const <a class="el" href="group__foundation.html#gacce5749db3dcfb916e98c253374264ed">PxU32</a> nbSolverArticulations, Dy::ArticulationV **solverArticulations)</td></tr>
<tr class="memdesc:ga650d7b45abd5412722bd0f226df3d246"><td class="mdescLeft">&#160;</td><td class="mdescRight">Iteratively solves the set of constraints defined by the provided <a class="el" href="structPxConstraintBatchHeader.html">PxConstraintBatchHeader</a> and <a class="el" href="structPxSolverConstraintDesc.html">PxSolverConstraintDesc</a> structures. Updates deltaVelocities inside the <a class="el" href="structPxSolverBody.html">PxSolverBody</a> structures. Produces resulting linear and angular motion velocities.  <a href="group__immediatemode.html#ga650d7b45abd5412722bd0f226df3d246">More...</a><br /></td></tr>
<tr class="separator:ga650d7b45abd5412722bd0f226df3d246"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gabd1a23fee83c2fab66822275bbcf50bb"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__foundation.html#gaea189596f11f07c586d4757cc67e8f7f">PX_C_EXPORT</a> <a class="el" href="group__common.html#ga4636d12a5a01930fa258136f3f93366f">PX_PHYSX_CORE_API</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__immediatemode.html#gabd1a23fee83c2fab66822275bbcf50bb">PxIntegrateSolverBodiesTGS</a> (<a class="el" href="structPxTGSSolverBodyVel.html">PxTGSSolverBodyVel</a> *solverBody, <a class="el" href="structPxTGSSolverBodyTxInertia.html">PxTGSSolverBodyTxInertia</a> *txInertia, <a class="el" href="classPxTransform.html">PxTransform</a> *poses, const <a class="el" href="group__foundation.html#gacce5749db3dcfb916e98c253374264ed">PxU32</a> nbBodiesToIntegrate, const PxReal dt)</td></tr>
<tr class="memdesc:gabd1a23fee83c2fab66822275bbcf50bb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Integrates a rigid body, returning the new velocities and transforms. After this function has been called, solverBody stores all the body's velocity data.  <a href="group__immediatemode.html#gabd1a23fee83c2fab66822275bbcf50bb">More...</a><br /></td></tr>
<tr class="separator:gabd1a23fee83c2fab66822275bbcf50bb"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- HTML footer for doxygen 1.8.14-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="navelem"><a class="el" href="dir_713b4d6d20ce249967929ad234a3da6e.html">include</a></li><li class="navelem"><a class="el" href="PxImmediateMode_8h.html">PxImmediateMode.h</a></li>
    <li class="footer">Copyright &copy; 2008-2021 NVIDIA Corporation, 2788 San Tomas Expressway, Santa Clara, CA 95051 U.S.A. All rights reserved. <a href="http://www.nvidia.com ">www.nvidia.com</a></li>
  </ul>
</div>
</body>
</html>
